Software architecture abstraction and aggregation as algebraic manipulations

نویسنده

  • Richard C. Holt
چکیده

The structure of a large system can be made comprehensible if it can be viewed as a modest number of interacting entities. For example, the 800,000 line Linux kernel can be reasonably viewed as its five top-level interconnected subsystems. Each abstracted entity (subsystem) may have aggregated attributes, e.g., the total count of the number of lines of code in it, or the set of programmers who have worked on it. Given that the software architecture of the system is represented as a typed graph, both abstraction (ignoring details inside subsystems) and aggregation (collecting selected internal information) can be specified as algebraic manipulations. Our approach, based on Tarski relational algebra, allows direct execution of these abstraction and aggregation specifications by means of a relational calculator.

برای دانلود رایگان متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

منابع مشابه

Structural Manipulations of Software Architecture using Tarski Relational Algebra

A software architecture is typically drawn as a nested set of box and arrow diagrams. The boxes represent components of the software system and the edges represent interactions. These diagrams correspond to typed graphs, in which there are a number of "types" or "colors" of edges, and in which there is a distinguished "contain" relation that represents the system hierarchy (the nesting of boxes...

متن کامل

Wins and Losses of Algebraic Transformations of Software Architectures

In order to understand, analyze and modify software, we commonly examine and manipulate its architecture. For example, we may want to examine the architecture at different levels of abstraction. We can view such manipulations as architectural transformations, and more specifically, as graph transformations. In this paper, we evaluate relational algebra as a way of specifying and automating the ...

متن کامل

Supporting runtime software architecture: A bidirectional-transformation-based approach

Runtime software architectures (RSA) are architecture-level, dynamic representations of running software systems, which help monitor and adapt the systems at a high abstraction level. The key issue to support RSA is tomaintain the causal connection between the architecture and the system, ensuring that the architecture represents the current system, and the modifications on the architecture cau...

متن کامل

Conceptual Integrity of Software Systems: Architecture, Abstraction and Algebra

Conceptual Integrity has been claimed to be the essence of high-quality software system design. On the other hand, it has been a rather elusive attribute of software systems, challenging various attempts of a clear-cut characterization. This paper evolves in this direction by two means: first, by analysis and clarification of open issues in architecture and abstraction terms; second, by pointin...

متن کامل

Explaining the Methods of Architecture Representation Using Semiotic Analysis (Umberto Eco's Theory of Architecture Codes)

: In this paper, it is tried to explain the concept of representation and architectural representation through a qualitative methodology, approach its procedure for gradual creation in architecture and then according to scholars and to obtain the effect of this concept in the process of architectural facts the concepts are presented. In addition, it is referred to theories and practical texts b...

متن کامل

ذخیره در منابع من


  با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید

عنوان ژورنال:

دوره   شماره 

صفحات  -

تاریخ انتشار 1999